package model

import (
	"time"
)

type Article struct {
	AtcId      int       `xorm:"not null pk autoincr comment('文章ID') INT" json:"atcId" form:"atcId" query:"atcId"`
	UserId     int       `xorm:"not null comment('作者ID') INT" query:"userId" json:"userId"`
	UserName   string    `xorm:"comment('作者名') VARCHAR(20)" json:"userName"`
	TopicId    int       `xorm:"comment('分类主题ID') INT" json:"topicId"`
	TopicName  string    `xorm:"comment('分类主题名') VARCHAR(20)" json:"topicName"`
	Title      string    `xorm:"comment('文章标题') VARCHAR(512)" json:"title"`
	Markdown   string    `xorm:"comment('markdown') LONGTEXT" json:"markdown"`
	Content    string    `xorm:"comment('文章内容') LONGTEXT" json:"content"`
	Summary    string    `xorm:"comment('文章摘要') LONGTEXT" json:"summary"`
	Cover      string    `xorm:"comment('博客封面图路径') VARCHAR(200)" json:"cover"`
	AtcState   int       `xorm:"comment('博客状态：0-草稿，1-已发布') INT" json:"atcState"`
	Sched      int       `xorm:"comment('是否定时发布') INT" json:"sched"`
	SchedTime  time.Time `xorm:"comment('定时发布时间') DATETIME" json:"schedTime"`
	CreateTime time.Time `xorm:"comment('创建时间') DATETIME" json:"createTime"`
	DropTime   time.Time `xorm:"comment('删除时间') DATETIME" json:"dropTime"`
	DataState  DataState `xorm:"comment('数据状态') INT" json:"dataState"`
	Dir        string    `xorm:"comment('目录') LONGTEXT" json:"dir"`
}

type DataState string

const (
	DataSate_ENABLE   DataState = "ENABLE"
	DataSate_DISABLED DataState = "DISABLED"
)

type ArticlePageParam struct {
	Page
	Article
}
